﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;


public class MatterTypeConfig
{
    public static Dictionary<string, MatterType> AllMatters = new Dictionary<string, MatterType>();
    public static string[] MatterNames;
    static MatterTypeConfig()
    {
        AllMatters.Add("水", new MatterType()
        {
            AtomicWeight = 18,
            BoilingPoint = 100,
            DensityWhenLiquid = 1000.0f,
            DensityWhenSolid = 900.0f,
            MeltingPoint = 0.0f,
            HeatOfFusion = 334,
            HeatOfGasification = 2260,
            HeatTransferCoefficient = 36.0f,
            Name = "水",
            SpecificHeat = 4.2f,
            SurfaceTensionOfLiquid = 7.2f,
            SolidSpriter = "Texture/slime_mold",
            LiquidSpriter = "Texture/water"
        });
        AllMatters.Add("水蒸汽", new MatterType()
        {
            AtomicWeight = 18,
            BoilingPoint = -200,
            DensityWhenLiquid = 1000.0f,
            DensityWhenSolid = 900.0f,
            MeltingPoint = -210.0f,
            HeatOfFusion = 334,
            HeatOfGasification = 2260,
            HeatTransferCoefficient = 0.6f,
            Name = "水蒸汽",
            SpecificHeat = 4.2f,
            SurfaceTensionOfLiquid = 7.2f,
            SolidSpriter = "Texture/slime_mold"
        });
        AllMatters.Add("煤", new MatterType()
        {
            AtomicWeight = 12,
            BoilingPoint = 4827.0f,
            DensityWhenLiquid = 1800.0f,
            DensityWhenSolid = 1800.0f,
            MeltingPoint = 3500.0f,
            HeatOfFusion = 334,
            HeatOfGasification = 2260,
            HeatTransferCoefficient = 10.6f,
            Name = "煤",
            SpecificHeat = 0.71f,
            SurfaceTensionOfLiquid = 7.2f,
            SolidSpriter = "Texture/carbon"
        });
        AllMatters.Add("石头", new MatterType()
        {
            AtomicWeight = 12,
            BoilingPoint = 4827.0f,
            DensityWhenLiquid = 1800.0f,
            DensityWhenSolid = 1800.0f,
            MeltingPoint = 3500.0f,
            HeatOfFusion = 334,
            HeatOfGasification = 2260,
            HeatTransferCoefficient = 3.6f,
            Name = "石头",
            SpecificHeat = 0.71f,
            SurfaceTensionOfLiquid = 7.2f,
            SolidSpriter = "Texture/carbon"
        });
        AllMatters.Add("氮气", new MatterType()
        {
            AtomicWeight = 28,
            BoilingPoint = -195.8f,
            DensityWhenLiquid = 729.0f,
            DensityWhenSolid = 729.0f,
            MeltingPoint = -209.8f,
            HeatOfFusion = 25.7f,
            HeatOfGasification = 202.76f,
            HeatTransferCoefficient = 0.6f,
            Name = "氮气",
            SpecificHeat = 1.401f,
            SurfaceTensionOfLiquid = 7.2f,
        });
        AllMatters.Add("氧气", new MatterType()
        {
            AtomicWeight = 32,
            BoilingPoint = -183.0f,
            DensityWhenLiquid = 1141.0f,
            DensityWhenSolid = 1141.0f,
            MeltingPoint = -218.4f,
            HeatOfFusion = 13.75f,
            HeatOfGasification = 213.125f,
            HeatTransferCoefficient = 0.6f,
            Name = "氧气",
            SpecificHeat = 0.71f,
            SurfaceTensionOfLiquid = 7.2f,
        });
        AllMatters.Add("二氧化碳", new MatterType()
        {
            AtomicWeight = 44,
            BoilingPoint = -56.55f,
            DensityWhenLiquid = 1177.0f,
            DensityWhenSolid = 1177.0f,
            MeltingPoint = -78.45f,
            HeatOfFusion = 13.75f,
            HeatOfGasification = 213.125f,
            HeatTransferCoefficient = 0.6f,
            Name = "二氧化碳",
            SpecificHeat = 0.71f,
            SurfaceTensionOfLiquid = 7.2f,
        });
        AllMatters.Add("一氧化碳", new MatterType()
        {
            AtomicWeight = 28,
            BoilingPoint = -56.55f,
            DensityWhenLiquid = 1177.0f,
            DensityWhenSolid = 1177.0f,
            MeltingPoint = -78.45f,
            HeatOfFusion = 13.75f,
            HeatOfGasification = 213.125f,
            HeatTransferCoefficient = 0.6f,
            Name = "一氧化碳",
            SpecificHeat = 0.71f,
            SurfaceTensionOfLiquid = 7.2f,
        });








        List<string> tempnames = new List<string>();
        foreach(var key in AllMatters.Keys)
        {
            tempnames.Add(key);
        }
        MatterNames = tempnames.ToArray();
    }

}